package com.company.emallbackend.entity;

import cn.hutool.core.annotation.Alias;
import com.baomidou.mybatisplus.annotation.*;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;

import java.io.Serializable;
import java.util.Date;

/**
* <p>
* 
* </p>
*
* @author hanlijian
* @since 2023-01-11
*/
@Getter
@Setter
@TableName("t_user")
@ApiModel(value = "User对象", description = "")
public class User implements Serializable {

    private static final long serialVersionUID = 1L;

    // 主键id
    @ApiModelProperty("主键id")
    @Alias("主键id")
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    // 姓名
    @ApiModelProperty("姓名")
    @Alias("姓名")
    private String name;

    // 昵称
    @ApiModelProperty("昵称")
    @Alias("昵称")
    private String nickname;

    // 密码
    @ApiModelProperty("密码")
    @Alias("密码")
    private String password;

    // 邮箱
    @ApiModelProperty("邮箱")
    @Alias("邮箱")
    private String email;

    // 地址
    @ApiModelProperty("地址")
    @Alias("地址")
    private String address;

    // 头像
    @ApiModelProperty("头像")
    @Alias("头像")
    private String avatar;

    // 年龄
    @ApiModelProperty("年龄")
    @Alias("年龄")
    private Integer age;

    // 创建时间
    @ApiModelProperty("创建时间")
    @Alias("创建时间")
    @TableField(value = "create_time",fill = FieldFill.INSERT)
    private Date createTime;

    // 修改时间
    @ApiModelProperty("修改时间")
    @Alias("修改时间")
    @TableField(value = "update_time",fill = FieldFill.INSERT_UPDATE)
    private Date updateTime;

    // 逻辑删除(0:未删除   1:已删除)
    @ApiModelProperty("逻辑删除(0:未删除   1:已删除)")
    @Alias("逻辑删除(0:未删除   1:已删除)")
    @TableLogic
    private Integer isDelete;
}